{
 "cells": [
  {
   "cell_type": "markdown",
   "id": "b9424635",
   "metadata": {},
   "source": [
    "# 基于联邦学习的图片分类任务"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "26887415",
   "metadata": {},
   "source": [
    "在这个教程中，我们将使用图像分类任务来介绍在`secretflow`框架下怎样来完成水平联邦学习任务。  \n",
    "`secretflow`框架提供了一套用户友好的api，可以很方便的将您的keras模型或者pytorch模型应用到联邦学习场景，成为联邦学习模型。  \n",
    "在接下来的教程中我们将手把手演示，如何将您已有的模型变成`secretflow`下的联邦模型，完成联邦多方建模任务"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "223044ce",
   "metadata": {},
   "source": [
    "## 联邦学习"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "5b60fdb5",
   "metadata": {},
   "source": [
    "这里的联邦学习特指的是水平场景的联邦学习，也就是样本的联合。这种模式适用于各个参与方业务相同，但触达的客户群不同，这种情况可以联合多方的样本来训练一个性能更好或者泛化性能更好的联合模型。比如在医疗场景，每个医院都有自己独特的病人群，各个地区的医院之间几乎是互不重叠，但是他们对于病历的检查记录（如影像，血检等）又是相同类型的。"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "333698af",
   "metadata": {},
   "source": [
    "<img alt=\"split_learning_tutorial.png\" src=\"resource/federate_learning.png\" width=\"600\">"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "54c1b11a",
   "metadata": {},
   "source": [
    "训练流程:  \n",
    "\n",
    "1. 各个参与方从服务器下载最新的模型\n",
    "2. 每个参与方利用本方的本地数据训练模型，将梯度加密（或者将参数加密）上传给服务器，服务器得到各方上传上来的加密梯度（加密参数）在服务端进行安全聚合，用聚合后的梯度更新模型参数。\n",
    "3. 服务器将更新后的模型返回给各个参与方\n",
    "4. 各个参与方更新各自的模型，准备下一次训练"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "65430f78",
   "metadata": {},
   "source": [
    "## 联邦学习 X SecretFlow"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 1,
   "id": "59774353",
   "metadata": {},
   "outputs": [],
   "source": [
    "%load_ext autoreload\n",
    "%autoreload 2"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "c5253753",
   "metadata": {},
   "source": [
    "在secretflow环境创造3个实体[Alice，Bob，Charlie]\n",
    "其中 alice, bob和charlie 是三个PYU，alice和bob角色是client，charlie角色是server  "
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 2,
   "id": "93f79d14",
   "metadata": {},
   "outputs": [
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "E0307 10:03:27.139174512 1914325 fork_posix.cc:70]           Fork support is only compatible with the epoll1 and poll polling strategies\n",
      "E0307 10:03:27.156145649 1914325 fork_posix.cc:70]           Fork support is only compatible with the epoll1 and poll polling strategies\n",
      "E0307 10:03:27.168126232 1914325 fork_posix.cc:70]           Fork support is only compatible with the epoll1 and poll polling strategies\n"
     ]
    }
   ],
   "source": [
    "import secretflow as sf\n",
    "\n",
    "sf.init(['alice', 'bob', 'charlie'], num_cpus=8, log_to_driver=True)\n",
    "alice, bob, charlie = sf.PYU('alice'), sf.PYU('bob'), sf.PYU('charlie')"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 3,
   "id": "4bf4e1f6",
   "metadata": {},
   "outputs": [],
   "source": [
    "ppu = sf.PPU(sf.utils.testing.cluster_def(['alice', 'bob']))"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "c53224e0",
   "metadata": {},
   "source": [
    "### 准备训练数据"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 4,
   "id": "44a81605",
   "metadata": {},
   "outputs": [
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\u001b[2m\u001b[36m(PPURuntime pid=1918584)\u001b[0m I0307 10:03:30.011243 1918584 external/com_github_brpc_brpc/src/brpc/server.cpp:1046] Server[ppu::link::internal::ReceiverServiceImpl] is serving on port=33045.\n",
      "\u001b[2m\u001b[36m(PPURuntime pid=1918584)\u001b[0m I0307 10:03:30.011326 1918584 external/com_github_brpc_brpc/src/brpc/server.cpp:1049] Check out http://i85c08157.eu95sqa:33045 in web browser.\n",
      "\u001b[2m\u001b[36m(PPURuntime pid=1918585)\u001b[0m I0307 10:03:30.021131 1918585 external/com_github_brpc_brpc/src/brpc/server.cpp:1046] Server[ppu::link::internal::ReceiverServiceImpl] is serving on port=56891.\n",
      "\u001b[2m\u001b[36m(PPURuntime pid=1918585)\u001b[0m I0307 10:03:30.021204 1918585 external/com_github_brpc_brpc/src/brpc/server.cpp:1049] Check out http://i85c08157.eu95sqa:56891 in web browser.\n",
      "\u001b[2m\u001b[36m(PPURuntime pid=1918584)\u001b[0m I0307 10:03:30.112153 1920424 external/com_github_brpc_brpc/src/brpc/socket.cpp:2202] Checking Socket{id=0 addr=127.0.0.1:56891} (0x563ed479cc40)\n",
      "\u001b[2m\u001b[36m(PPURuntime pid=1918584)\u001b[0m I0307 10:03:30.112324 1920424 external/com_github_brpc_brpc/src/brpc/socket.cpp:2262] Revived Socket{id=0 addr=127.0.0.1:56891} (0x563ed479cc40) (Connectable)\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "\u001b[2m\u001b[36m(PPURuntime pid=1918584)\u001b[0m [2022-03-07 10:03:30.011] [info] [context.cc:58] connecting to mesh, id=root, self=0\n",
      "\u001b[2m\u001b[36m(PPURuntime pid=1918584)\u001b[0m [2022-03-07 10:03:30.029] [info] [context.cc:83] try_connect to rank 1 not succeed, sleep_for 1000ms and retry.\n",
      "\u001b[2m\u001b[36m(PPURuntime pid=1918585)\u001b[0m [2022-03-07 10:03:30.021] [info] [context.cc:58] connecting to mesh, id=root, self=1\n",
      "\u001b[2m\u001b[36m(PPURuntime pid=1918584)\u001b[0m [2022-03-07 10:03:31.030] [info] [context.cc:111] connected to mesh, id=root, self=0\n",
      "\u001b[2m\u001b[36m(PPURuntime pid=1918585)\u001b[0m [2022-03-07 10:03:31.029] [info] [context.cc:111] connected to mesh, id=root, self=1\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\u001b[2m\u001b[36m(_run pid=1918583)\u001b[0m 2022-03-07 10:03:31,302,302 DEBUG [connectionpool.py:_new_conn:1001] Starting new HTTPS connection (1): federal.oss-cn-hangzhou.aliyuncs.com:443\n",
      "\u001b[2m\u001b[36m(_run pid=1918583)\u001b[0m 2022-03-07 10:03:31,376,376 DEBUG [connectionpool.py:_make_request:456] https://federal.oss-cn-hangzhou.aliyuncs.com:443 \"GET /dataset/public/mnist/mnist_alice.npz HTTP/1.1\" 200 63520506\n",
      "\u001b[2m\u001b[36m(_run pid=1918583)\u001b[0m 2022-03-07 10:03:35,361,361 DEBUG [connectionpool.py:_new_conn:1001] Starting new HTTPS connection (1): federal.oss-cn-hangzhou.aliyuncs.com:443\n",
      "\u001b[2m\u001b[36m(_run pid=1918583)\u001b[0m 2022-03-07 10:03:35,460,460 DEBUG [connectionpool.py:_make_request:456] https://federal.oss-cn-hangzhou.aliyuncs.com:443 \"GET /dataset/public/mnist/mnist_bob.npz HTTP/1.1\" 200 127040506\n"
     ]
    }
   ],
   "source": [
    "from secretflow.data.ndarray import load\n",
    "# 加载数据\n",
    "data_dict = {alice: 'mnist_alice.npz',\n",
    "               bob: 'mnist_bob.npz'}\n",
    "\n",
    "fed_npz = load(data_dict, allow_pickle=True)"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "f8049947",
   "metadata": {},
   "source": [
    "fed_npz是一个字典，从中拿出image和label就是后面联邦训练需要的FedNdarray"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 5,
   "id": "a5cd53f3",
   "metadata": {},
   "outputs": [],
   "source": [
    "image = fed_npz['image']\n",
    "label = fed_npz['label']"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "23fbbbdf",
   "metadata": {},
   "source": [
    "我们来看一下获得到的FedNdarray数据，FedNdarray是一个构建在多方概念上的虚拟的Ndarray，目的是保护数据隐私。  \n",
    "底层数据存储在各个参与方，对于FedNdarray的操作，实际上只是各个参与方对自己的local数据做操作。server端或者其他client不会接触到原始的数据。  \n",
    "这里为了方便演示，我们手动把数据下载到driver端\n",
    "**这个数据在后面的单方模型对比使用**"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 6,
   "id": "bd4c3735",
   "metadata": {},
   "outputs": [],
   "source": [
    "import requests\n",
    "import io\n",
    "import numpy as np\n",
    "\n",
    "dataset_dict = {}\n",
    "for device, url in data_dict.items():\n",
    "    response = requests.get(url)\n",
    "    response.raise_for_status()\n",
    "    dataset_dict[device] = np.load(io.BytesIO(response.content))"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 7,
   "id": "5984479d",
   "metadata": {},
   "outputs": [],
   "source": [
    "alice_data,alice_label = dataset_dict[alice][\"image\"],dataset_dict[alice][\"label\"]\n",
    "bob_data, bob_label = dataset_dict[bob][\"image\"], dataset_dict[bob][\"label\"]"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "e01bc559",
   "metadata": {},
   "source": [
    "让我们从数据集中抓取一些样本，通过可视化的方法来看看，在alice和bob两方的数据是什么样？"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 8,
   "id": "031dbe50",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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",
      "text/plain": [
       "<Figure size 1440x288 with 40 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "from matplotlib import pyplot as plt\n",
    "\n",
    "figure = plt.figure(figsize=(20, 4))\n",
    "j = 0\n",
    "\n",
    "for example in alice_data[:40]:\n",
    "  plt.subplot(4, 10, j+1)\n",
    "  plt.imshow(example, cmap='gray', aspect='equal')\n",
    "  plt.axis('off')\n",
    "  j += 1"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 9,
   "id": "11098cb0",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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",
      "text/plain": [
       "<Figure size 1440x288 with 40 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "figure = plt.figure(figsize=(20, 4))\n",
    "j = 0\n",
    "for example in bob_data[:40]:\n",
    "  plt.subplot(4, 10, j+1)\n",
    "  plt.imshow(example, cmap='gray', aspect='equal')\n",
    "  plt.axis('off')\n",
    "  j += 1"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "8ff562fe",
   "metadata": {},
   "source": [
    "从上面两个例子可以看出，alice和bob的数据类型和任务都是一致的，但是由于触达的用户群不同，所以样本会有差别。"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "9b72eab0",
   "metadata": {},
   "source": [
    "让我们再次拿出之前已经得到的FedNdarray，并对他们做训练接和测试集的拆分来交给后面的训练任务"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 10,
   "id": "d74c7284",
   "metadata": {},
   "outputs": [],
   "source": [
    "from secretflow.data.split import train_test_split\n",
    "random_seed = 1234\n",
    "train_image, test_image = train_test_split(data=image, train_size=0.8, random_state=random_seed)\n",
    "train_label, test_label = train_test_split(data=label, train_size=0.8, random_state=random_seed)"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "806779e1",
   "metadata": {},
   "source": [
    "### 定义模型"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 11,
   "id": "25fbec5d",
   "metadata": {},
   "outputs": [],
   "source": [
    "def create_conv_model(input_shape, num_classes, name='model'):\n",
    "    def create_model():\n",
    "        from tensorflow import keras\n",
    "        from tensorflow.keras import layers\n",
    "        # Create model\n",
    "        model = keras.Sequential(\n",
    "            [\n",
    "                keras.Input(shape=input_shape),\n",
    "                layers.Conv2D(32, kernel_size=(3, 3), activation=\"relu\"),\n",
    "                layers.MaxPooling2D(pool_size=(2, 2)),\n",
    "                layers.Conv2D(64, kernel_size=(3, 3), activation=\"relu\"),\n",
    "                layers.MaxPooling2D(pool_size=(2, 2)),\n",
    "                layers.Flatten(),\n",
    "                layers.Dropout(0.5),\n",
    "                layers.Dense(num_classes, activation=\"softmax\"),\n",
    "            ]\n",
    "        )\n",
    "        # Compile model\n",
    "        model.compile(loss='categorical_crossentropy',\n",
    "                      optimizer='adam',\n",
    "                      metrics=[\"accuracy\"])\n",
    "        return model\n",
    "\n",
    "    return create_model\n"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "33fce574",
   "metadata": {},
   "source": [
    "### 联邦训练"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "ac7e3cb8",
   "metadata": {},
   "source": [
    "1. 导入训练所需的包"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 12,
   "id": "c2c68047",
   "metadata": {},
   "outputs": [
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "2022-03-07 10:04:15.076672: W tensorflow/stream_executor/platform/default/dso_loader.cc:64] Could not load dynamic library 'libcudart.so.11.0'; dlerror: libcudart.so.11.0: cannot open shared object file: No such file or directory; LD_LIBRARY_PATH: /opt/rh/devtoolset-10/root/usr/lib64:/opt/rh/devtoolset-10/root/usr/lib:/opt/rh/devtoolset-10/root/usr/lib64/dyninst:/opt/rh/devtoolset-10/root/usr/lib/dyninst:/opt/rh/devtoolset-10/root/usr/lib64:/opt/rh/devtoolset-10/root/usr/lib\n"
     ]
    }
   ],
   "source": [
    "from secretflow.security.aggregation import PlainAggregator, DeviceAggregator, SecureAggregator\n",
    "from secretflow.model.fl_model import FLTFModel"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "37f25ac1",
   "metadata": {},
   "source": [
    "2. 定义模型"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 13,
   "id": "25a3f788",
   "metadata": {},
   "outputs": [],
   "source": [
    "num_classes = 10\n",
    "input_shape = (28, 28, 1)\n",
    "model = create_conv_model(input_shape, num_classes)"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "564ac93b",
   "metadata": {},
   "source": [
    "3. 定义参与训练的device_list，即之前准备好的各个参与方的PYU"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 14,
   "id": "a7955558",
   "metadata": {},
   "outputs": [],
   "source": [
    "device_list = [alice, bob]"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "95051611",
   "metadata": {},
   "source": [
    "4. 定义聚合函数  \n",
    " 隐语提供了多种聚合方案，`PlainAggregator`对应明文聚合，`SecureAggregator`和`PPUAggregator`可用于安全聚合，更多安全聚合方案可以参考[安全聚合](./Secure_aggregation.ipynb)。"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 15,
   "id": "cfd83d07",
   "metadata": {},
   "outputs": [],
   "source": [
    "plain_aggregator = PlainAggregator(charlie)\n",
    "secure_aggregator = SecureAggregator(charlie, [alice, bob])\n",
    "ppu_aggregator = DeviceAggregator(ppu)\n"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "4bb9c29c",
   "metadata": {},
   "source": [
    "5. 定义联邦模型"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 16,
   "id": "1d4fbc7a",
   "metadata": {},
   "outputs": [
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\u001b[2m\u001b[36m(_run pid=1918583)\u001b[0m 2022-03-07 10:04:26.641431: W tensorflow/stream_executor/platform/default/dso_loader.cc:64] Could not load dynamic library 'libcudart.so.11.0'; dlerror: libcudart.so.11.0: cannot open shared object file: No such file or directory; LD_LIBRARY_PATH: /opt/rh/devtoolset-10/root/usr/lib64:/opt/rh/devtoolset-10/root/usr/lib:/opt/rh/devtoolset-10/root/usr/lib64/dyninst:/opt/rh/devtoolset-10/root/usr/lib/dyninst:/opt/rh/devtoolset-10/root/usr/lib64:/opt/rh/devtoolset-10/root/usr/lib\n",
      "\u001b[2m\u001b[36m(_run pid=1918595)\u001b[0m 2022-03-07 10:04:26.945611: W tensorflow/stream_executor/platform/default/dso_loader.cc:64] Could not load dynamic library 'libcudart.so.11.0'; dlerror: libcudart.so.11.0: cannot open shared object file: No such file or directory; LD_LIBRARY_PATH: /opt/rh/devtoolset-10/root/usr/lib64:/opt/rh/devtoolset-10/root/usr/lib:/opt/rh/devtoolset-10/root/usr/lib64/dyninst:/opt/rh/devtoolset-10/root/usr/lib/dyninst:/opt/rh/devtoolset-10/root/usr/lib64:/opt/rh/devtoolset-10/root/usr/lib\n",
      "\u001b[2m\u001b[36m(_run pid=1918583)\u001b[0m 2022-03-07 10:04:27,294,294 DEBUG [tpu_cluster_resolver.py:<module>:35] Falling back to TensorFlow client; we recommended you install the Cloud TPU client directly with pip install cloud-tpu-client.\n",
      "\u001b[2m\u001b[36m(_run pid=1918583)\u001b[0m 2022-03-07 10:04:27,469,469 DEBUG [__init__.py:<module>:47] Creating converter from 7 to 5\n",
      "\u001b[2m\u001b[36m(_run pid=1918583)\u001b[0m 2022-03-07 10:04:27,469,469 DEBUG [__init__.py:<module>:47] Creating converter from 5 to 7\n",
      "\u001b[2m\u001b[36m(_run pid=1918583)\u001b[0m 2022-03-07 10:04:27,469,469 DEBUG [__init__.py:<module>:47] Creating converter from 7 to 5\n",
      "\u001b[2m\u001b[36m(_run pid=1918583)\u001b[0m 2022-03-07 10:04:27,470,470 DEBUG [__init__.py:<module>:47] Creating converter from 5 to 7\n",
      "\u001b[2m\u001b[36m(_run pid=1918595)\u001b[0m 2022-03-07 10:04:27,597,597 DEBUG [tpu_cluster_resolver.py:<module>:35] Falling back to TensorFlow client; we recommended you install the Cloud TPU client directly with pip install cloud-tpu-client.\n",
      "\u001b[2m\u001b[36m(_run pid=1918595)\u001b[0m 2022-03-07 10:04:27,784,784 DEBUG [__init__.py:<module>:47] Creating converter from 7 to 5\n",
      "\u001b[2m\u001b[36m(_run pid=1918595)\u001b[0m 2022-03-07 10:04:27,784,784 DEBUG [__init__.py:<module>:47] Creating converter from 5 to 7\n",
      "\u001b[2m\u001b[36m(_run pid=1918595)\u001b[0m 2022-03-07 10:04:27,784,784 DEBUG [__init__.py:<module>:47] Creating converter from 7 to 5\n",
      "\u001b[2m\u001b[36m(_run pid=1918595)\u001b[0m 2022-03-07 10:04:27,784,784 DEBUG [__init__.py:<module>:47] Creating converter from 5 to 7\n",
      "\u001b[2m\u001b[36m(PYUTFModel pid=1918583)\u001b[0m 2022-03-07 10:04:28.897161: W tensorflow/stream_executor/platform/default/dso_loader.cc:64] Could not load dynamic library 'libcuda.so.1'; dlerror: libcuda.so.1: cannot open shared object file: No such file or directory; LD_LIBRARY_PATH: /opt/rh/devtoolset-10/root/usr/lib64:/opt/rh/devtoolset-10/root/usr/lib:/opt/rh/devtoolset-10/root/usr/lib64/dyninst:/opt/rh/devtoolset-10/root/usr/lib/dyninst:/opt/rh/devtoolset-10/root/usr/lib64:/opt/rh/devtoolset-10/root/usr/lib\n",
      "\u001b[2m\u001b[36m(PYUTFModel pid=1918583)\u001b[0m 2022-03-07 10:04:28.897195: W tensorflow/stream_executor/cuda/cuda_driver.cc:269] failed call to cuInit: UNKNOWN ERROR (303)\n",
      "\u001b[2m\u001b[36m(PYUTFModel pid=1918595)\u001b[0m 2022-03-07 10:04:29.182015: W tensorflow/stream_executor/platform/default/dso_loader.cc:64] Could not load dynamic library 'libcuda.so.1'; dlerror: libcuda.so.1: cannot open shared object file: No such file or directory; LD_LIBRARY_PATH: /opt/rh/devtoolset-10/root/usr/lib64:/opt/rh/devtoolset-10/root/usr/lib:/opt/rh/devtoolset-10/root/usr/lib64/dyninst:/opt/rh/devtoolset-10/root/usr/lib/dyninst:/opt/rh/devtoolset-10/root/usr/lib64:/opt/rh/devtoolset-10/root/usr/lib\n",
      "\u001b[2m\u001b[36m(PYUTFModel pid=1918595)\u001b[0m 2022-03-07 10:04:29.182047: W tensorflow/stream_executor/cuda/cuda_driver.cc:269] failed call to cuInit: UNKNOWN ERROR (303)\n"
     ]
    }
   ],
   "source": [
    "fed_model = FLTFModel(\n",
    "            device_list=device_list, model=model, aggregator=secure_aggregator)"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "e41f0a4c",
   "metadata": {},
   "source": [
    "6. 跑起来"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 17,
   "id": "e5bcb2d0",
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "12/63 [====>.........................] - ETA: 0s - loss: 0.1346 - accuracy: 0.9622 \n",
      "12/32 [==========>...................] - ETA: 0s - loss: 0.1363 - accuracy: 0.9596\n",
      "37/63 [================>.............] - ETA: 0s - loss: 0.1320 - accuracy: 0.9622\n",
      "32/32 [==============================] - 0s 5ms/step - loss: 0.1286 - accuracy: 0.9610\n",
      "valid_eval=[0.1301192  0.96087495]\n",
      "63/63 [==============================] - 0s 4ms/step - loss: 0.1317 - accuracy: 0.9607\n",
      "14/63 [=====>........................] - ETA: 0s - loss: 0.0928 - accuracy: 0.9749\n",
      "13/32 [===========>..................] - ETA: 0s - loss: 0.0901 - accuracy: 0.9718\n",
      "40/63 [==================>...........] - ETA: 0s - loss: 0.0912 - accuracy: 0.9750\n",
      "32/32 [==============================] - 0s 4ms/step - loss: 0.0879 - accuracy: 0.9730\n",
      "valid_eval=[0.0898173 0.9731249]\n",
      "63/63 [==============================] - 0s 4ms/step - loss: 0.0918 - accuracy: 0.9732\n",
      " 1/63 [..............................] - ETA: 1s - loss: 0.0394 - accuracy: 0.9922\n",
      " 1/32 [..............................] - ETA: 0s - loss: 0.0763 - accuracy: 0.9844\n",
      "24/63 [==========>...................] - ETA: 0s - loss: 0.0728 - accuracy: 0.9785\n",
      "32/32 [==============================] - 0s 4ms/step - loss: 0.0726 - accuracy: 0.9783\n",
      "valid_eval=[0.07248015 0.97768745]\n",
      "63/63 [==============================] - 0s 4ms/step - loss: 0.0723 - accuracy: 0.9771\n",
      "14/63 [=====>........................] - ETA: 0s - loss: 0.0616 - accuracy: 0.9821\n",
      "13/32 [===========>..................] - ETA: 0s - loss: 0.0609 - accuracy: 0.9826\n",
      "42/63 [===================>..........] - ETA: 0s - loss: 0.0599 - accuracy: 0.9814\n",
      "32/32 [==============================] - 0s 4ms/step - loss: 0.0606 - accuracy: 0.9825\n",
      "valid_eval=[0.06052585 0.98193745]\n",
      "63/63 [==============================] - 0s 4ms/step - loss: 0.0605 - accuracy: 0.9814\n",
      " 1/32 [..............................] - ETA: 0s - loss: 0.0551 - accuracy: 0.9922\n",
      "12/63 [====>.........................] - ETA: 0s - loss: 0.0577 - accuracy: 0.9824\n",
      "24/32 [=====================>........] - ETA: 0s - loss: 0.0515 - accuracy: 0.9850\n",
      "38/63 [=================>............] - ETA: 0s - loss: 0.0536 - accuracy: 0.9836\n",
      "32/32 [==============================] - 0s 5ms/step - loss: 0.0528 - accuracy: 0.9847\n",
      "valid_eval=[0.05347985 0.98412495]\n",
      "63/63 [==============================] - 0s 4ms/step - loss: 0.0542 - accuracy: 0.9835\n",
      "10/63 [===>..........................] - ETA: 0s - loss: 0.0518 - accuracy: 0.9797\n",
      "10/32 [========>.....................] - ETA: 0s - loss: 0.0572 - accuracy: 0.9852\n",
      "31/63 [=============>................] - ETA: 0s - loss: 0.0525 - accuracy: 0.9839\n",
      "32/32 [==============================] - 0s 5ms/step - loss: 0.0486 - accuracy: 0.9862\n",
      "61/63 [============================>.] - ETA: 0s - loss: 0.0548 - accuracy: 0.9825\n",
      "valid_eval=[0.05178695 0.98431245]\n",
      "63/63 [==============================] - 0s 4ms/step - loss: 0.0550 - accuracy: 0.9824\n",
      "\u001b[2m\u001b[36m(_run pid=1918588)\u001b[0m \n",
      "14/63 [=====>........................] - ETA: 0s - loss: 0.0501 - accuracy: 0.9866\n",
      "14/32 [============>.................] - ETA: 0s - loss: 0.0486 - accuracy: 0.9860\n",
      "41/63 [==================>...........] - ETA: 0s - loss: 0.0489 - accuracy: 0.9855\n",
      "32/32 [==============================] - 0s 4ms/step - loss: 0.0462 - accuracy: 0.9847\n",
      "valid_eval=[0.0477842  0.98493745]\n",
      "63/63 [==============================] - 0s 4ms/step - loss: 0.0493 - accuracy: 0.9851\n",
      " 1/63 [..............................] - ETA: 1s - loss: 0.0338 - accuracy: 0.9844\n",
      " 1/32 [..............................] - ETA: 0s - loss: 0.0420 - accuracy: 0.9922\n",
      "24/63 [==========>...................] - ETA: 0s - loss: 0.0435 - accuracy: 0.9867\n",
      "23/32 [====================>.........] - ETA: 0s - loss: 0.0421 - accuracy: 0.9871\n",
      "52/63 [=======================>......] - ETA: 0s - loss: 0.0463 - accuracy: 0.9856\n",
      "32/32 [==============================] - 0s 5ms/step - loss: 0.0429 - accuracy: 0.9872\n",
      "valid_eval=[0.04492955 0.98606245]\n",
      "63/63 [==============================] - 0s 4ms/step - loss: 0.0469 - accuracy: 0.9849\n",
      " 1/63 [..............................] - ETA: 1s - loss: 0.0447 - accuracy: 0.9688\n",
      " 1/32 [..............................] - ETA: 0s - loss: 0.0378 - accuracy: 0.9922\n",
      "22/63 [=========>....................] - ETA: 0s - loss: 0.0450 - accuracy: 0.9854\n",
      "21/32 [==================>...........] - ETA: 0s - loss: 0.0400 - accuracy: 0.9877\n",
      "48/63 [=====================>........] - ETA: 0s - loss: 0.0440 - accuracy: 0.9857\n",
      "32/32 [==============================] - 0s 5ms/step - loss: 0.0409 - accuracy: 0.9875\n",
      "valid_eval=[0.04268055 0.98681245]\n",
      "63/63 [==============================] - 0s 4ms/step - loss: 0.0444 - accuracy: 0.9861\n",
      "13/63 [=====>........................] - ETA: 0s - loss: 0.0453 - accuracy: 0.9868\n",
      "12/32 [==========>...................] - ETA: 0s - loss: 0.0440 - accuracy: 0.9857\n",
      "38/63 [=================>............] - ETA: 0s - loss: 0.0418 - accuracy: 0.9875\n",
      "32/32 [==============================] - 0s 4ms/step - loss: 0.0420 - accuracy: 0.9862\n",
      "valid_eval=[0.04222295 0.98649995]\n",
      "63/63 [==============================] - 0s 4ms/step - loss: 0.0424 - accuracy: 0.9868\n"
     ]
    }
   ],
   "source": [
    "fed_model.fit(train_image, train_label, validation_data=(test_image,test_label), epochs=10, batch_size=128, aggregate_freq=1)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 18,
   "id": "94aa9e5f",
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      " 1/63 [..............................] - ETA: 1s - loss: 0.0389 - accuracy: 0.9766\n",
      " 1/32 [..............................] - ETA: 0s - loss: 0.0360 - accuracy: 0.9844\n",
      "25/63 [==========>...................] - ETA: 0s - loss: 0.0412 - accuracy: 0.9875\n",
      "25/32 [======================>.......] - ETA: 0s - loss: 0.0434 - accuracy: 0.9859\n",
      "55/63 [=========================>....] - ETA: 0s - loss: 0.0418 - accuracy: 0.9874\n",
      "32/32 [==============================] - 0s 4ms/step - loss: 0.0420 - accuracy: 0.9862\n",
      "[0.04222295 0.98649995]\n",
      "63/63 [==============================] - 0s 4ms/step - loss: 0.0424 - accuracy: 0.9868\n"
     ]
    }
   ],
   "source": [
    "global_metric = fed_model.evaluate(test_image, test_label, batch_size=128)\n",
    "print(global_metric)"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "cb9c64ba",
   "metadata": {},
   "source": [
    "### 对比单方模型"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "a1309ed8",
   "metadata": {},
   "source": [
    "#### 模型\n",
    "模型结构和上面fl的模型保持一致\n",
    "#### 数据\n",
    "数据同样使用mnist数据集，单方模型这里我们只是用了切分后的alice方数据共20000个样本"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 19,
   "id": "3a239a07",
   "metadata": {},
   "outputs": [
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "2022-03-07 10:07:27.101911: W tensorflow/stream_executor/platform/default/dso_loader.cc:64] Could not load dynamic library 'libcuda.so.1'; dlerror: libcuda.so.1: cannot open shared object file: No such file or directory; LD_LIBRARY_PATH: /opt/rh/devtoolset-10/root/usr/lib64:/opt/rh/devtoolset-10/root/usr/lib:/opt/rh/devtoolset-10/root/usr/lib64/dyninst:/opt/rh/devtoolset-10/root/usr/lib/dyninst:/opt/rh/devtoolset-10/root/usr/lib64:/opt/rh/devtoolset-10/root/usr/lib\n",
      "2022-03-07 10:07:27.101950: W tensorflow/stream_executor/cuda/cuda_driver.cc:269] failed call to cuInit: UNKNOWN ERROR (303)\n"
     ]
    }
   ],
   "source": [
    "from tensorflow import keras\n",
    "from tensorflow.keras import layers\n",
    "import tensorflow as tf\n",
    "from sklearn.model_selection import train_test_split\n",
    "\n",
    "def create_model():\n",
    "\n",
    "    model = keras.Sequential(\n",
    "        [\n",
    "            keras.Input(shape=input_shape),\n",
    "            layers.Conv2D(32, kernel_size=(3, 3), activation=\"relu\"),\n",
    "            layers.MaxPooling2D(pool_size=(2, 2)),\n",
    "            layers.Conv2D(64, kernel_size=(3, 3), activation=\"relu\"),\n",
    "            layers.MaxPooling2D(pool_size=(2, 2)),\n",
    "            layers.Flatten(),\n",
    "            layers.Dropout(0.5),\n",
    "            layers.Dense(num_classes, activation=\"softmax\"),\n",
    "        ]\n",
    "    )\n",
    "    # Compile model\n",
    "    model.compile(loss='categorical_crossentropy',\n",
    "                  optimizer='adam',\n",
    "                  metrics=[\"accuracy\"])\n",
    "    return model\n",
    "\n",
    "single_model = create_model()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 20,
   "id": "fbd979bf",
   "metadata": {},
   "outputs": [],
   "source": [
    "from sklearn.model_selection import train_test_split\n",
    "random_seed = 1234\n",
    "X_train, X_test, y_train, y_test = train_test_split(alice_data, alice_label, test_size=0.33, random_state=random_seed)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 21,
   "id": "74524f78",
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Epoch 1/10\n",
      "105/105 [==============================] - 2s 15ms/step - loss: 0.8655 - accuracy: 0.7389 - val_loss: 0.2530 - val_accuracy: 0.9265\n",
      "Epoch 2/10\n",
      "105/105 [==============================] - 1s 13ms/step - loss: 0.2373 - accuracy: 0.9259 - val_loss: 0.1589 - val_accuracy: 0.9529\n",
      "Epoch 3/10\n",
      "105/105 [==============================] - 1s 14ms/step - loss: 0.1659 - accuracy: 0.9485 - val_loss: 0.1242 - val_accuracy: 0.9614\n",
      "Epoch 4/10\n",
      "105/105 [==============================] - 1s 14ms/step - loss: 0.1341 - accuracy: 0.9589 - val_loss: 0.1050 - val_accuracy: 0.9676\n",
      "Epoch 5/10\n",
      "105/105 [==============================] - 1s 13ms/step - loss: 0.1124 - accuracy: 0.9645 - val_loss: 0.0932 - val_accuracy: 0.9688\n",
      "Epoch 6/10\n",
      "105/105 [==============================] - 1s 13ms/step - loss: 0.0990 - accuracy: 0.9689 - val_loss: 0.0862 - val_accuracy: 0.9733\n",
      "Epoch 7/10\n",
      "105/105 [==============================] - 1s 14ms/step - loss: 0.0880 - accuracy: 0.9730 - val_loss: 0.0823 - val_accuracy: 0.9738\n",
      "Epoch 8/10\n",
      "105/105 [==============================] - 1s 13ms/step - loss: 0.0820 - accuracy: 0.9741 - val_loss: 0.0738 - val_accuracy: 0.9768\n",
      "Epoch 9/10\n",
      "105/105 [==============================] - 1s 13ms/step - loss: 0.0758 - accuracy: 0.9757 - val_loss: 0.0698 - val_accuracy: 0.9792\n",
      "Epoch 10/10\n",
      "105/105 [==============================] - 1s 14ms/step - loss: 0.0703 - accuracy: 0.9792 - val_loss: 0.0688 - val_accuracy: 0.9788\n"
     ]
    },
    {
     "data": {
      "text/plain": [
       "<keras.callbacks.History at 0x7f5b443aa340>"
      ]
     },
     "execution_count": 21,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "single_model.fit(X_train,y_train,validation_data=(X_test,y_test),batch_size=128,epochs=10)"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "dbe14068",
   "metadata": {},
   "source": [
    "上面两个实验模拟了一个典型的水平联邦场景的训练问题，\n",
    "* alice和bob拥有类型的图片\n",
    "* 每一方只有样本的一部分数据，但是双方的训练目的是一致的  \n",
    "如果alice只用自己的一方数据来训练模型，能够得到一个精确度0.978的模型，但是如果联合bob的数据之后，可以获得一个精确度接近0.99的模型，而且多方数据联合训练的模型的泛化性能也会更好"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "c15e286a",
   "metadata": {},
   "source": [
    "## 总结\n",
    "* 本篇我们介绍了什么是联邦学习，以及如何在secretflow框架下进行水平联邦学习  \n",
    "* 从实验数据可以看出，水平联邦通过扩充样本量，联合多方训练可以提升模型效果\n",
    "* 本文档使用了安全聚合（SecureAggregator）来做演示，secretflow提供了多种聚合方案，您可以在[安全聚合](./Secure_aggregation.ipynb)了解更多信息。\n",
    "* 下一步，你可能想尝试不同的数据集，您需要先将数据集进行垂直切分，然后按照本教程的流程进行\n",
    "\n",
    "\n"
   ]
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 3 (ipykernel)",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.8.12"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 5
}
